package com.swiftops.basic.sys.service;

import com.swiftops.common.core.PageResult;
import com.swiftops.basic.sys.vo.entity.SysRoleEntityVO;
import com.swiftops.basic.sys.vo.request.SysRoleRequestVO;
import com.swiftops.basic.sys.vo.response.SysRoleResponseVO;

/**
 * 角色
 *
 * @author yangyang
 * @date 2023/09/17
 **/
public interface SysRoleService {

    /**
     * 获取角色分页列表
     *
     * @param sysRoleRequestVO 查询条件
     * @return 返回角色分页结果
     */
    PageResult<SysRoleResponseVO> querySysRolePageList(SysRoleRequestVO sysRoleRequestVO);

    /**
     * 获取角色详细信息
     *
     * @param id 角色ID
     * @return 角色
     */
    SysRoleEntityVO getSysRoleEntityVO(String id);

    /**
     * 新增角色
     *
     * @param sysRoleEntityVO 角色实体
     */
    void addSysRole(SysRoleEntityVO sysRoleEntityVO);

    /**
     * 修改角色
     *
     * @param sysRoleEntityVO 角色实体
     */
    void updateSysRole(SysRoleEntityVO sysRoleEntityVO);

    /**
     * 删除角色
     *
     * @param id 角色ID
     */
    void deleteSysRole(String id);
}
